# frozen_string_literal: true

CI_CD_TEMPLATE_MESSAGE = <<~MSG
This merge request requires a CI/CD Template review. To make sure these
changes are reviewed, take the following steps:

1. Ensure the merge request has the ~"ci::templates" label.
   If the merge request modifies CI/CD Template files, Danger will do this for you.
1. Prepare your MR for a CI/CD Template review according to the
   [template development guide](https://docs.gitlab.com/ee/development/cicd/templates.html).
1. Assign and `@` mention the CI/CD Template reviewer suggested by Reviewer Roulette.
MSG

CI_CD_TEMPLATE_FILES_MESSAGE = <<~MSG
The following files require a review from the CI/CD Templates maintainers:
MSG

return unless helper.ci?

template_paths_to_review = helper.changes_by_category[:ci_template]

if helper.mr_labels.include?('ci::templates') || template_paths_to_review.any?
  message('This merge request adds or changes files that require a ' \
          'review from the CI/CD Templates maintainers.')

  markdown(CI_CD_TEMPLATE_MESSAGE)

  if template_paths_to_review.any?
    markdown(CI_CD_TEMPLATE_FILES_MESSAGE + helper.markdown_list(template_paths_to_review))
  end
end
